package com.wang.utils;


import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;


//sqlSessionFactory   mybatis工具类
public class MybatisUtils {
    //使用mybatis第一步
    //获取sqlSessionFactory对象
    private static SqlSessionFactory sqlSessionFactory;
    static{
        try {
            String resource="mybatis-config.xml";
            InputStream inputStream= Resources.getResourceAsStream(resource);
            sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);

        }catch (IOException e){
        e.printStackTrace();
        }
    }

    //openSession
    public static SqlSession getSqlSession(){
        return sqlSessionFactory.openSession();
    }

}
/*
首先使用SqlSessionFactoryBuilder（工厂建造者）去创建sqlSessionFactory（工厂），
当sqlSessionFactory被创建后SqlSessionFactoryBuilder就没什么用了。
而sqlSessionFactory是用来获取SqlSession（getSqlSession），sqlSessionFactory会伴随到程序的结束，
每生成一个SqlSession最后就必须关闭它，SqlSession就是获取我们Mapper.xml文件的
*/

